2019 年 7 月,apple 在 wwdc 介紹了全新的 SwiftUI,一個以宣告式編程結合響應式編程的所見即所得 UI 設計工具,而其中最讓人興奮的莫過於綁定 UI 的響應式編程函式庫: Combine, 在 Swift 社群內有個著名的函式庫: RxSwift,就是使用 Swift 建立響應式編程的.
這次將好好的介紹何為響應式編程,響應式編程的常見函式,及如何使用 Combine 函式庫.
Combine 是 Apple 對函數響應式編程的實現,類似於 RxSwift。 RxSwift 本身是 ReactiveX 一個實現。Apple 的框架使用了許多與其他語言庫相同的函數響應概念,應用在Swift的使用特性之上。
Combine 應用環境介紹:
Swift 5.1
xcode 11
由於筆者撰筆時, Ubuntu Swift 尚未 推出 5.1 因此這次將以 macOS 為主, 搭配 Xcode 11 beta 5。
請參考 Swift.org
在學習 Combine 時,有部分必須理解的 "先修知識",若讀者有部分不了解的,建議可以稍微搜尋一下,都不是很難,不用擔心。
其中 觀察者模式
的應用不是很明顯,方法鏈式調用可以參考 AppCoda 的文章:利用 Swift 5.1 新功能實作 Fluent Interface 讓程式碼更易讀流暢!。
簡單測驗:
whoami:
我是游諭 ytyubox